/**
 * 我的收藏页面JavaScript
 */

(function($) {
    var favoritesList = [];
    
    /**
     * 页面初始化
     */
    appcan.ready(function() {
        
        // 返回按钮
        appcan.button("#nav-left", "btn-act", function() {
            appcan.window.close(-1);
        });
        
        // 加载收藏列表
        loadFavorites();
    });
    
    /**
     * 加载收藏列表
     */
    function loadFavorites() {
        // 从本地存储获取收藏列表
        var favoritesData = appcan.locStorage.getVal('userFavorites');
        
        if (favoritesData) {
            try {
                favoritesList = JSON.parse(favoritesData);
            } catch (e) {
                favoritesList = [];
            }
        }
        
        // 更新收藏数量
        $('#favoriteCount').text(favoritesList.length);
        
        // 渲染收藏列表
        renderFavorites();
    }
    
    /**
     * 渲染收藏列表
     */
    function renderFavorites() {
        var $favoritesList = $('#favoritesList');
        var $emptyState = $('#emptyState');
        
        if (favoritesList.length === 0) {
            // 显示空状态
            $emptyState.show();
            return;
        }
        
        // 隐藏空状态
        $emptyState.hide();
        
        // 生成收藏项HTML
        var html = '';
        favoritesList.forEach(function(item, index) {
            html += generateFavoriteItemHTML(item, index);
        });
        
        $favoritesList.html(html);
        
        // 绑定点击事件
        bindFavoriteEvents();
    }
    
    /**
     * 生成收藏项HTML
     */
    function generateFavoriteItemHTML(item, index) {
        var favoriteDate = new Date(item.favoriteTime || Date.now()).toLocaleDateString();
        var imageUrl = getNewsImage(item.category);
        
        return `
            <div class="favorite-item" data-index="${index}">
                <div class="favorite-content">
                    <div class="favorite-image">
                        <img src="${imageUrl}" alt="${item.title}" onerror="this.src='index/css/myImg/news1.jpg'">
                        <div class="favorite-category">${item.category || '科技新闻'}</div>
                    </div>
                    <div class="favorite-title">${item.title}</div>
                    <div class="favorite-meta">
                        <div class="favorite-date">
                            <i class="fa fa-calendar"></i>
                            ${favoriteDate}
                        </div>
                        <div class="favorite-actions">
                            <button class="favorite-action share" data-index="${index}">
                                <i class="fa fa-share-alt"></i>
                            </button>
                            <button class="favorite-action remove" data-index="${index}">
                                <i class="fa fa-trash"></i>
                            </button>
                        </div>
                    </div>
                </div>
            </div>
        `;
    }
    
    /**
     * 绑定收藏项事件
     */
    function bindFavoriteEvents() {
        // 点击收藏项，查看详情
        $('.favorite-item').off('click').on('click', function(e) {
            if ($(e.target).closest('.favorite-actions').length > 0) {
                return; // 如果点击的是操作按钮，不处理
            }
            
            var index = $(this).data('index');
            var newsItem = favoritesList[index];
            
            // 跳转到新闻详情页面
            appcan.locStorage.setVal('currentNews', JSON.stringify(newsItem));
            appcan.openWinWithUrl('news_detail', 'news_detail.html');
        });
        
        // 分享按钮
        $('.favorite-action.share').off('click').on('click', function(e) {
            e.stopPropagation();
            var index = $(this).data('index');
            shareNews(favoritesList[index]);
        });
        
        // 删除按钮
        $('.favorite-action.remove').off('click').on('click', function(e) {
            e.stopPropagation();
            var index = $(this).data('index');
            removeFavorite(index);
        });
    }
    
    /**
     * 删除收藏
     */
    function removeFavorite(index) {
        uexWindow.confirm({
            title: "确认删除",
            message: "确定要从收藏中移除这篇文章吗？",
            buttonLabels: ["取消", "删除"]
        }, function(buttonIndex) {
            if (buttonIndex == 1) {
                // 从列表中删除
                favoritesList.splice(index, 1);
                
                // 保存到本地存储
                appcan.locStorage.setVal('userFavorites', JSON.stringify(favoritesList));
                
                // 重新渲染
                renderFavorites();
                
                // 更新收藏数量
                $('#favoriteCount').text(favoritesList.length);
                
                uexWindow.toast('0', '5', '已取消收藏', '2000');
            }
        });
    }
    
    /**
     * 分享新闻
     */
    function shareNews(newsItem) {
        var shareText = `我正在阅读：${newsItem.title}`;
        
        // 模拟分享功能
        uexWindow.confirm({
            title: "分享文章",
            message: "要分享这篇文章吗？\n\n" + shareText,
            buttonLabels: ["取消", "分享"]
        }, function(buttonIndex) {
            if (buttonIndex == 1) {
                uexWindow.toast('0', '5', '分享成功', '2000');
            }
        });
    }
    
    /**
     * 根据新闻分类获取对应图片
     */
    function getNewsImage(category) {
        var imageMap = {
            'AI技术': 'index/css/myImg/newsImg1.png',
            '移动科技': 'index/css/myImg/newsImg2.png',
            '云计算': 'index/css/myImg/newsImg3.png',
            '区块链': 'index/css/myImg/news1.jpg',
            '物联网': 'index/css/myImg/news2.jpg',
            '网络安全': 'index/css/myImg/news3.png',
            'VR技术': 'index/css/myImg/newsImg1.png',
            '大数据': 'index/css/myImg/newsImg2.png',
            '5G技术': 'index/css/myImg/newsImg3.png',
            '量子科技': 'index/css/myImg/news1.jpg'
        };
        
        return imageMap[category] || 'index/css/myImg/news1.jpg';
    }
    
    // 暴露到全局作用域
    window.loadFavorites = loadFavorites;
    
})($);

/**
 * 返回首页
 */
function goToHome() {
    appcan.window.close(-1);
} 